home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-08-16 | 4.9 KB | 211 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: :SCounter.xh.
- * Generated using:
- * SOM Precompiler somipc: 2.18
- * SOM Emitter emitxh.dll: 2.33
- */
-
- #ifndef SOM_Module_DevUniv_defined
- #define SOM_Module_DevUniv_defined 1
- #include <som.xh>
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
-
- /*
- * End of user-defined types.
- */
- #endif /* SOM_Module_DevUniv_defined */
-
- #ifndef SOM_DevUniv_SCounter_xh
- #define SOM_DevUniv_SCounter_xh
-
- class DevUniv_SCounter;
-
- #define DevUniv_SCounter_MajorVersion 1
- #define DevUniv_SCounter_MinorVersion 0
-
- /* C++ SOM defs */
- #include <somcls.xh>
- #include <somcm.xh>
-
- /* C++ parent defs */
- #ifndef SOM_SOMObject_xh
- #include <somobj.xh>
- #endif
-
- #ifndef DevUniv_SCounter_API
- #define DevUniv_SCounter_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
-
- /*
- * End of user-defined types.
- */
-
- #ifdef OLDIBMSOMAPISUPPORT
- #define DevUniv_SCounterCClassData DevUniv_SCounterClassData
- #define DevUniv_SCounterNewClass(major,minor) somNewVersionedClassReference(DevUniv_SCounter,major,minor)
- #endif
-
- /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
- #define DevUniv_SCounterMetaClass SOMClass
-
-
- /* The API to the DevUniv_SCounter class object, and the methods it introduces. */
- SOMEXTERN struct DevUniv_SCounterClassDataStructure {
- #ifdef OLDIBMSOMAPISUPPORT
- SOMClass *classObject; /* always zero, use somNewClassReference instead */
- #else
- long zero;
- #endif
- somStaticClassInfo *sci;
- somDToken instanceDataToken;
- long reserved [3];
- somMToken Increment;
- somMToken Decrement;
- somMToken _get_value;
- somMToken _set_value;
- somMToken Square;
- } SOMDLINK DevUniv_SCounterClassData;
-
- #if !defined(DevUniv_SCounter_Class_Source) && !defined(SOM_Module_scounter_Source)
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma import list DevUniv_SCounterClassData
- #endif
- #endif
-
-
- /*
- * -- Typedefs and inline method declarations for left path inherited methods
- * -- are omitted because this compilation had -museinheritedmethods in effect
- */
-
-
- /*
- * -- Typedefs for DevUniv_SCounter Method Procedures
- */
- SOMEXTERN {
- typedef void (* SOMLINK somTD_DevUniv_SCounter_Increment)(DevUniv_SCounter *somSelf, Environment *ev);
- typedef void (* SOMLINK somTD_DevUniv_SCounter_Decrement)(DevUniv_SCounter *somSelf, Environment *ev);
- typedef void (* SOMLINK somTD_DevUniv_SCounter_Square)(DevUniv_SCounter *somSelf, Environment *ev);
- typedef short (* SOMLINK somTD_DevUniv_SCounter__get_value)(DevUniv_SCounter *somSelf, Environment *ev);
- typedef void (* SOMLINK somTD_DevUniv_SCounter__set_value)(DevUniv_SCounter *somSelf, Environment *ev,
- short value);
- }
-
- #endif /* DevUniv_SCounter_API */
-
-
- /*
- * -- This emitter treats Method Tokens as Thunks by default.
- * -- Use the sc modifier "nothunks" to change this default
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for DevUniv_SCounter
- */
- class DevUniv_SCounter : public SOMObject
- {
- public:
-
- // DevUniv_SCounter::new registers use of the class object, and then uses somNew
- // to allocate memory and load the object method table pointer.
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- // Allocate memory using the default allocator for DevUniv_SCounter, and
- // clear mem & set method table pointer, call basic initialization
- #ifdef SOMCHKNULL
- void * __somResult = (void *)
- somNewObject(DevUniv_SCounter);
- SOMCHKNULL(__somResult);
- return __somResult;
- #else
- return (void*) somNewObject(DevUniv_SCounter);
- #endif
- }
-
- // DevUniv_SCounter::delete uses the default deallocator for the object's class.
- void operator delete(void * obj)
- {
- if (obj) {
- SOM_Resolve(obj,SOMObject,somFree)
- ( (SOMObject*) obj );
- }
- }
-
- /* method: Increment */
- void Increment(Environment *ev)
- {
- SOM_ResolveD(this,DevUniv_SCounter,DevUniv_SCounter,Increment)
- (this,ev);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: Decrement */
- void Decrement(Environment *ev)
- {
- SOM_ResolveD(this,DevUniv_SCounter,DevUniv_SCounter,Decrement)
- (this,ev);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: Square */
- void Square(Environment *ev)
- {
- SOM_ResolveD(this,DevUniv_SCounter,DevUniv_SCounter,Square)
- (this,ev);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: _get_value */
- short _get_value(Environment *ev)
- {
- #ifdef SOMCHKEXCEPT
- short __somResult =
- SOM_ResolveD(this,DevUniv_SCounter,DevUniv_SCounter,_get_value)
- (this,ev);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,DevUniv_SCounter,DevUniv_SCounter,_get_value)
- (this,ev);
- #endif
- }
-
- /* method: _set_value */
- void _set_value(Environment *ev,
- short value)
- {
- SOM_ResolveD(this,DevUniv_SCounter,DevUniv_SCounter,_set_value)
- (this,ev,value);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- }; /* DevUniv_SCounter */
-
-
-
- #endif /* SOM_DevUniv_SCounter_xh */
-